package com.itbaizhan.filter;

import javax.servlet.*;
import java.io.IOException;
/*当启动Tomcat时，容器会实例化Filter,所以不用专门去启动它，
* 编写完Filter  要在web.xml编写<filter>标签与filter-mapping标签
* 或直接在这Filter中写注解@WebFilter()
* 在web.xml中的filter比注解式开发先执行
* 在web.xml中的filter执行顺序是由上到下
* 使用注解式开发Filter时，执行顺序会根据Filter的名称进行排序的结果决定调用的顺序。A-Z*/
public class Filter00 implements Filter {
    @Override
    public void init(FilterConfig filterConfig) throws ServletException {

    }

    @Override
    public void doFilter(ServletRequest servletRequest, ServletResponse servletResponse, FilterChain filterChain) throws IOException, ServletException {

    }

    @Override
    public void destroy() {

    }
}
/*Filter的生命周期
Filter的生命周期是由容器管理的。当容器启动时会实例化Filter并调用init方法完成初始化动作。
当客户端浏览器发送请求时，容器会启动一个新的线程来处理请求，
如果请求的URL能够被过滤器所匹配，那么则先调用过滤器中 的doFilter方法，
再根据是否有chain.doFilter的指令，决定是否继续请求目标资源。
当容器关闭时会销毁Filter对象，在销毁之前会调用destroy方法。

实时效果反馈

1.如下对Filter的生命周期描述错误的是。

A Filter的生命周期是由容器管理

B Filter会被容器实例化多次

C Filter的生命周期分为三个阶段

D Filter由容器负责销毁

答案

1=>B*/